package basic;

/**
 * 模拟玩游戏场景，规则如下：
 *  第一关分数大于95才可以进入下一关
 *  第二关分数大于85才可以进入下一关
 *  第三关分数大于80才可以进入下一关
 */
public abstract class AbstractHandler implements GameControl {

    // 维护下一个节点
    AbstractHandler next;

    public void doChain(){
        gameScore();
        // 在具体的子类中进行了维护下一个逻辑
        if (isExecuteNext() && this.next!=null){
            this.next.doChain();
        }
    }

    public  abstract  int gameScore();

    public abstract  boolean isExecuteNext();


}
